An explain plan is a feature provided by the majority of relational databases. When the database engine is provided with an SQL statement it computes the access path used to execute the query. This output is called the Query Execution Plan and is used for troubleshooting performance issues in a database.
Reading or writing data in an Oracle database is done by issuing an SQL statement. One of Oracle's task when it receives such a statement is to build a query execution plan. An execution plan defines how Oracle finds or writes the data. For example, an important decision that Oracle has to take is if it uses indexes or not. And if there are more indexes, which of these is used. All this is contained in an execution plan. If one wants to explore such an execution plan, Oracle provides the SQL statement EXPLAIN PLAN to determine this. When processing an EXPLAIN PLAN, Oracle analyzes the statement and fills a special table with the Execution plan for that statement.